package 蓝桥真题.javab组省赛历年真题.编程题;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*时间限制: 1.0s 内存限制: 512.0MB
本题总分：15 分
【问题描述】
满足 N! 的末尾恰好有 K 个 0 的最小的 N 是多少?
如果这样的 N 不存在输出 −1。
【输入格式】
 一个整数 K。
【输出格式】
 一个整数代表答案。
【样例输入】
 2
【样例输出】
 10
【评测用例规模与约定】
 对于 30% 的数据，1 ≤ K ≤ 10^6
 对于 100% 的数据，1 ≤ K ≤ 10^18 
————————————————
版权声明：本文为CSDN博主「尘封的CPU」的原创文章，遵循CC 4.0 BY-SA版权协议，转载请附上原文出处链接及本声明。
原文链接：https://blog.csdn.net/kndjg/article/details/127696158
*/public class 求阶乘 {
	    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
	    
	    static long get(long a){//求a的阶乘(a!)中5的质因子的个数
	    	   long res=0;
	    	   while(a>0){
	    		   res+=a/5;
	    		   a/=5;
	    	   }
	    	   return res;
	    }
	    public static void main(String[] args) throws NumberFormatException, IOException {
	    	   long k=Long.parseLong(br.readLine());
	    	   //二分查找某个数的阶乘(N!)中5的质因子的个数等于k
	    	   long l=1,r=0x7fffffffffffffL;
	    	   while(l<r){
	    		    long mid=l+r>>1;
	    	        if(get(mid)>=k)
	    	        	r=mid;
	    	        else l=mid+1;
	    	   }
	    	   if(get(l)==k)System.out.print(l);
	    	   else System.out.print(-1);
	    	   System.out.print(Long.MAX_VALUE);
		}
	    
}
